package entity

import (
	"go.mongodb.org/mongo-driver/bson/primitive"
)

type GoodsOrder struct {
	Id         primitive.ObjectID `bson:"_id,omitempty" json:"id,omitempty"`
	UID        uint               `bson:"uid" json:"uid"`
	GID        uint               `bson:"gid" json:"gid"`
	GoodsType  int                `bson:"goodsType" json:"goodsType"` //1=官方,2=积分
	OrderNo    string             `bson:"orderNo" json:"orderNo"`
	TypeID     uint               `bson:"typeID" json:"typeID"`
	TypeName   string             `bson:"typeName" json:"typeName"`
	TypeImg    string             `bson:"typeImg" json:"typeImg"`
	TypeModule string             `bson:"typeModule" json:"typeModule"`
	TypeType   int                `bson:"typeType" json:"typeType"`
	Price      float64            `bson:"price" json:"price"`
	Method     string             `bson:"method" json:"method"`
	PayMethod  []GoodsPayMethod   `bson:"payMethod" json:"payMethod"`   //支付方式
	PayStatus  int                `bson:"payStatus" json:"payStatus"`   //0=待支付,1=已支付,-1=关闭
	CreateTime int64              `bson:"createTime" json:"createTime"` //创建时间
	PayTime    int64              `bson:"payTime" json:"payTime"`       //支付时间
	PayNotify  string             `bson:"payNotify" json:"payNotify"`   //支付回调
	CancelTime string             `bson:"cancelTime" json:"cancelTime"` //取消时间
}
type GoodsPayMethod struct {
	TypeID     uint   `bson:"typeID" json:"typeID"`
	TypeName   string `bson:"typeName" json:"typeName"`
	TypeImg    string `bson:"typeImg" json:"typeImg"`
	TypeModule string `bson:"typeModule" json:"typeModule"`
	Num        int64  `bson:"num" json:"num"`
}

type GoodsLastUserReward struct {
	Id             primitive.ObjectID `bson:"_id,omitempty" json:"id,omitempty"`
	UID            uint               `bson:"uid" json:"uid"`                       //用户id
	GID            uint               `bson:"gid" json:"gid"`                       //商品id
	TypeID         uint               `bson:"typeID" json:"typeID"`                 //商品类型id
	TypeName       string             `bson:"typeName" json:"typeName"`             //商品类型名称
	TypeImg        string             `bson:"typeImg" json:"typeImg"`               //商品类型图片
	PID            uint               `bson:"pid" json:"pid"`                       //上级用户id
	RewardTypeID   uint               `bson:"rewardTypeID" json:"rewardTypeID"`     //奖励类型id
	RewardTypeName string             `bson:"rewardTypeName" json:"rewardTypeName"` //奖励类型名称
	RewardTypeImg  string             `bson:"rewardTypeImg" json:"rewardTypeImg"`   //奖励类型图片
	Reward         int64              `bson:"reward" json:"reward"`                 //奖励数量
	AddTime        string             `bson:"addTime" json:"addTime"`               //添加时间
	IsReceive      bool               `bson:"isReceive" json:"isReceive"`           // 是否领取
	ReceiveTime    string             `bson:"receiveTime" json:"receiveTime"`       // 领取时间
}
